package com.platform.qujia.service;

import com.alibaba.fastjson.JSONObject;
import com.platform.qujia.param.response.YunhuaPayRes;
import com.platform.qujia.pojo.*;
import com.platform.qujia.pojo.dto.BroadcastCancelOrderDTO;
import com.platform.qujia.pojo.vo.YunhuaOrderPayInfo;

import java.util.Map;

public interface GzhNewsTemplateService {
    //获取公众号消息模板
    GzhNewsTemplate getGzhNewsTemplate(GzhNewsTemplate gzhNewsTemplate);

    //消费推送
    void pushConsumeToUser(AppUserInfo appUserInfo, PayOrder payOrder, Integer integral);

    void feiePush(PayOrder payOrder);

    public void pushConsumeToEmployees (PayOrder payOrder);

    void elecOrderPush(CustomerCardUseRecord electronicCardInfo);

    void saleOrderPush(SaleActivityOrder activityOrder);

    void pushSettleInfo(PayOrder payOrder, JSONObject obj);

    void sendEletricMessage(JSONObject obj, Station station, CustomerCardUseRecord customerCardUseRecord);

    void sendPosSettleInfo(YunhuaPayRes yunhuaPayRes, PayWay payWay, PayOrder payOrder);

    void sendStkSettleInfo(PhysicalCardBalance physicalCardBalance, Map<String,Object> res);

//    void insertYunhuaOrderInfo(YunhuaOrderPayInfo yunhuaOrderPayInfo);

    void broadcastCancelOrder(BroadcastCancelOrderDTO cancelOrderDTO);

    /**
     * 自定义打印小票测试方法
     * @param payOrder
     */
    void printOrderReceipt(PayOrder payOrder);

    String getOrderReceiptString(String orderNo, String deviceFactory, String printType, boolean his);

}
